#ifndef QDYNAMICDOCKWIDGET_H
#define QDYNAMICDOCKWIDGET_H

#include "qdock.h"

class UDockChild;

class UDockWidget : public QDockItem
{
    Q_OBJECT

public:
    UDockWidget(QWidget *parent=0, Qt::WindowFlags flags = Qt::FramelessWindowHint);
protected:
    void keyPressEvent(QKeyEvent *event);
protected slots:
    void mouseDownSlot(QMouseEvent* event);
    void mouseMoveSlot(QMouseEvent* event);
    void mouseUpSlot(QMouseEvent* event);
    void keyPressSlot(QKeyEvent* event);

};


class UDockChild : public QWidget
{
    Q_OBJECT

public:
    UDockChild(QWidget *parent=0, Qt::WindowFlags flags = Qt::FramelessWindowHint);
protected:
    void mouseReleaseEvent(QMouseEvent *event);
    void mousePressEvent(QMouseEvent *event);
    void mouseMoveEvent(QMouseEvent *event);
    void keyPressEvent(QKeyEvent *event);

Q_SIGNALS:
    void mouseDown(QMouseEvent* event);
    void mouseMove(QMouseEvent* event);
    void mouseUp(QMouseEvent* event);
    void keyPress(QKeyEvent* event);
};
#endif // QDYNAMICDOCKWIDGET_H
